using System.Threading.Tasks;
using JNPF.Utils;
using System.Collections.Generic;
using JNPF.Basics.Models;

namespace JNPF.Basics.Logic
{
    public interface CustomerneedIService
    {
		/// <summary>
		/// 获取信息
		/// </summary>
		/// <param name="id">主键id</param>
		/// <returns></returns>
		Task<CustomerneedEntity> GetInfo(int id);


        /// <summary>
        /// 根据流水号 获取 信息
        /// </summary>
        /// <param name="serialid"></param>
        /// <returns></returns>
        Task<CustomerneedEntity> GetInfoBySerialid(string serialid);

        /// <summary>
        /// 列表(分页)
        /// </summary>
        /// <param name="input">请求参数</param>
        /// <returns></returns>
        Task<PageResult<CustomerneedListOutput>> GetPageList(CustomerneedListQueryInput input);

        /// <summary>
        /// 企业用户  ===  手机号码对应起来的 
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
      Task<PageResult<CustomerneedListOutput>> GetBusPageList(CustomerneedListQueryInput input);
        /// <summary>
        /// 客户经理列表（分页）
        /// </summary>
        /// <param name="input">请求参数</param>
        /// <returns></returns>
        Task<PageResult<CustomerneedListOutput>> GetCuseBusList(CustomerneedListQueryInput input);
        /// <summary>
        /// 信贷管家   列表（分页）
        /// </summary>
        /// <param name="input">请求参数</param>
        /// <returns></returns>
        Task<PageResult<CustomerneedListOutput>> GetPagCuseList(CustomerneedListQueryInput input);




        /// <summary>
        /// 创建
        /// </summary>
        /// <param name="entity">实体对象</param>
        /// <returns></returns>
        Task<int> Create(CustomerneedEntity entity);

		/// <summary>
		/// 更新
		/// </summary>
		/// <param name="entity">实体对象</param>
		/// <returns></returns>
		Task<int> Update(CustomerneedEntity entity);

		/// <summary>
		/// 删除
		/// </summary>
		/// <param name="entity">实体对象</param>
		/// <returns></returns>
		Task<int> Delete(CustomerneedEntity entity);

		/// <summary>
		/// 列表
		/// </summary>
		/// <returns></returns>
		Task<List<CustomerneedEntity>> GetList(CustomerneedListQueryInput input);


    }
}
